#pragma once

#include<iostream>
#include<string>
#include<ctime>

// struct tm {
//     int tm_sec;    // 秒，范围为0-61（包括闰秒）
//     int tm_min;    // 分钟，范围为0-59
//     int tm_hour;   // 小时，范围为0-23
//     int tm_mday;   // 一个月中的第几天，范围为1-31
//     int tm_mon;    // 月份，范围为0-11（0表示1月）
//     int tm_year;   // 年份，从1900年开始计算（例如2025年为125）
//     int tm_wday;   // 一周中的第几天，范围为0-6（0表示周日）
//     int tm_yday;   // 一年中的第几天，范围为0-365
//     int tm_isdst;  // 是否为夏令时
// };

std::string GetCurrTime()
{
    time_t t = time(nullptr); //获取时间戳
    struct tm *curr = ::localtime(&t); //将时间戳转化为本地时间, 并返回一个指向tm结构体的指针
    char currtime[32];
    snprintf(currtime, sizeof(currtime), "%d-%d-%d %d:%d:%d", 
            curr->tm_year + 1900,
            curr->tm_mon + 1,
            curr->tm_mday,
            curr->tm_hour,
            curr->tm_min,
            curr->tm_sec);
    return currtime;
}